package com.wuyi.service.admin;

import com.github.pagehelper.PageInfo;
import com.wuyi.pojo.Category;
import com.wuyi.pojo.bo.AdminAddCategoryBO;
import com.wuyi.pojo.bo.AdminCategoryBO;
import com.zc.utils.JSONResult;

import java.text.ParseException;
import java.util.List;

/**
 * @author 曾川
 * @version 1.0.0
 * @ClassName AdminCatService.java
 * @Description 后台管理操作
 * @createTime 2021年11月03日 19:50:00
 */
public interface AdminService {


    /**
     * 分类查询
     * @param categoryName
     * @param categoryDesc
     * @return
     */
    public List<Category> queryCategory(String categoryName, String categoryDesc);


    /**
     * 新增分类
     * @param categoryBO
     * @return
     */
    public JSONResult addCategory(AdminAddCategoryBO categoryBO);


    /**
     * 修改分类
     * @param categoryBO
     * @return
     */
    public JSONResult editCategory(AdminCategoryBO categoryBO);


    /**
     * 删除分类
     * @param categoryId
     * @return
     */
    public JSONResult delCategory(Integer categoryId);


    //-----用户管理模块-----

    /**
     * 分页查询用户列表
     * @param pageNum
     * @param pageSize
     * @return
     */
    public PageInfo queryUser(String userName, Integer userRole, Integer pageNum, Integer pageSize);

    /**
     * 删除用户
     * @param userId
     * @return
     */
    public JSONResult deleteUser(String userId);

    //-----帖子管理模块-----

    /**
     * 查询帖子
     * @param postTitle
     * @param userName
     * @param postTime
     * @param pageNum
     * @param pageSize
     * @return
     */
    public PageInfo queryPost(String postTitle, String userName, String postTime, Integer pageNum, Integer pageSize) throws ParseException;



    //----资源管理模块-----
    //-----课件管理模块-----
    //-----软件管理模块-----

    /**
     * 三个查询资源的模块为一个接口
     * @param resourceName
     * @param userName
     * @param resourceTime
     * @param categoryId
     * @param pageNum
     * @param pageSize
     * @return
     * @throws ParseException
     */
    public PageInfo queryResource(String resourceName, String userName,
                                  String resourceTime, Integer categoryId,
                                  Integer pageNum, Integer pageSize) throws ParseException;

    /**
     * 删除资源
     * @param resourceId
     * @return
     */
    public JSONResult delResource(Integer resourceId);





}
